#pragma once
#include "GalconCommonTypes.h"

#include <boost/shared_ptr.hpp>
#include <boost/noncopyable.hpp>
class PlayerInternalImpl : private boost::noncopyable
{
public:
   PlayerInternalImpl(PlayerID playerID, GameColors playerColor);
   ~PlayerInternalImpl();
   PlayerID GetPlayerID() const { return m_playerID; }
   GameColors PlayerColor() const { return m_playerColor; }
private:

   const PlayerID m_playerID;

   const GameColors m_playerColor;
   
};

typedef boost::shared_ptr<PlayerInternalImpl> PlayerInternalImplPtr;